package gg.zsw.dataframework.decode;

import lombok.NonNull;

import java.util.ArrayList;
import java.util.List;

/**
 * @author zhou.sw
 * @Date 2020/6/29 10:55
 */
public interface DecodeHandler<Input, Output> {

    /**
     * 只是类型转换而已，如果有误会报错的
     * 注意: 不要override这个方法
     *
     * @param input
     * @return
     */
    default Object decodeObject(Object input) {
        Output out = decode((Input) input);
        return out;
    }


    /**
     * @param input
     * @return
     */
    Output decode(Input input);

}
